/**
 * 获取头部选项配置
 * 该函数用于生成包含应用信息和授权信息的头部选项对象。
 * 它会检查本地存储中是否存在用户信息，并在存在时添加Authorization头部字段。
 *
 * @returns {Object} 返回一个包含应用信息和授权信息（如果存在）的头部选项对象。
 */
import {
	AppInfo
} from '../utils/AppInfo'
import {
	Login
} from '../utils/user'

const app = AppInfo.getInstance()
export const headerOptions = async () => {
	let options = {}
	// 如果本地存储中存在userInfo，则添加Authorization头部字段
	if (uni.getStorageSync('userInfo')) {
		options.Authorization = `Bearer ${uni.getStorageSync('userInfo').accessToken}`
	} else {
		// await Login.getInstance().getLoginCode()
	}
	// 返回包含应用信息和头部选项的对象
	return {
		...app.getAppInfo(),
		appName: encodeURIComponent(uni.getStorageSync('appConfig').appName || null),
		nickName: encodeURIComponent(uni.getStorageSync('userInfo').nickName || null),
		platform: 3,
		...options
	}
}
